Extending the life of TomTom wearables
TomTom recently announced
it would stop operating their supporting infrastructure by the end of September
following its earlier decision
to exit the wearables market.
This means that its products, such as sports watches, will become effectively
useless, as they will no longer be able to export their activities and
sync them with tracker sites.
Throwing away an otherwise fine watch only because its maker decided to
shut down its proprietary infrastructure seems like a sad waste.
Here is how you can download the watch’s data and
upload it to Strava, a popular activity tracker,
using open source software.
Continue reading "Extending the life of TomTom wearables"Last modified: Friday, November 3, 2023 5:57 pm
Open Collaboration at Eclipse
The International Conference on Software Engineering
is the premier research conference on the topic.
This year it began with a keynote address by
the Eclipse Foundation Executive Director,
Mike Milinkovich,
on Open Collaboration: The Eclipse Way.
Continue reading "Open Collaboration at Eclipse"Last modified: Wednesday, May 31, 2017 10:26 am
How to Create Your Own Git Server
Although I'm a happy (also paying) user of GitHub's offerings,
there are times when I prefer to host a private repository
on a server I control.
Setting up your own Git server can be useful
if you're isolated from the public internet,
if you're subject to inflexible regulations,
or if you simply want features different from those offered by GitHub
(and other similar providers).
Setting up a Git server on a Unix (Linux, Mac OS X, *BSD, Solaris, AIX)
machine isn't difficult,
but there are many details to observe.
Here is a complete guide.
Continue reading "How to Create Your Own Git Server"Last modified: Wednesday, June 19, 2013 2:20 pm
Git
Even by our field’s dizzying rate of progress I wouldn’t expect to revisit the subject of version control just six years after I first wrote about it in this column (Version Control Systems. Software, 22(5):108–109, September/October 2005). Yet here we are. The new kid on the block is git, a distributed revision control system available on all mainstream development platforms through a Free Software license. Git, a brainchild of Linus Torvalds, began its life in 2005 as the revision management system used for coordinating the development of the Linux kernel. Over the years its functionality, portability, efficiency, and third-party adoption have evolved by leaps and bounds to make it its category’s leader. (Two other systems with similar characteristics are Mercurial and Bazaar.)
Continue reading "Git"Last modified: Monday, September 3, 2012 11:19 am
How do Big US Firms Use Open Source Software?
We hear a lot about the adoption of open source software,
but when I was asked to provide hard evidence there was
little I could find.
In an
article I recently published in the
Journal of Systems and Software together with my colleague
Vaggelis Giannikas we tried to fill this gap by
examining the type of software the US Fortune 1000 companies use
in their web-facing operations.
The results were not what I was expecting.
Continue reading "How do Big US Firms Use Open Source Software?"Last modified: Thursday, March 22, 2012 7:47 pm
Package Management Systems
DLL hell was a condition that often afflicted unfortunate users of old Microsoft Windows versions. Under it, the installation of one program would render others unusable due to incompatibilities between dynamically linked libraries. Suffering users would have to carefully juggle their conflicting DLLs to find a stable configuration. Similar problems distress any administrator manually installing software that depends on incompatible versions of other helper modules.
Continue reading "Package Management Systems"Last modified: Thursday, May 17, 2012 3:35 pm
How to Decrypt "Secrets for Android" Files
Secrets for Android
is a nifty Android application that allows you to securely store
passwords and other sensitive data on your Android phone.
Your data are encoded with your supplied password using strong
cryptography and are therefore protected if your phone gets stolen.
Although the application offers a backup and an export facility,
I found both wanting in terms of the availability and confidentiality
associated with their use.
Continue reading "How to Decrypt "Secrets for Android" Files"Last modified: Thursday, February 9, 2012 0:19 am
Mind Mapping
In a recent
NPR interview the journalist
described how I used a mind map to organize my work while I
served as Secretary General for Information Systems
at the Greek Ministry of Finance.
A number of people asked me for more details;
if you're interested read on.
Continue reading "Mind Mapping"Last modified: Sunday, January 8, 2012 6:42 pm
Using the HP 4470c Scanner Under Windows 7
Neither
Hewlett Packard nor
Microsoft Windows 7
offer native support for my HP 4470c scanner.
Throwing a working scanner away to buy a new one only because some
software was missing seemed like a waste,
so I looked for an alternative solution.
This is how I made it work using SANE,
an open source framework for scanners.
Continue reading "Using the HP 4470c Scanner Under Windows 7"Last modified: Sunday, November 27, 2011 6:54 pm
Choosing and Using Open Source Components
The developers of the SQLite open source database engine estimate that it’s deployed in roughly half a billion systems around the world (users include Airbus, Google, and Skype). Think of the hundreds of thousands of open source components, just one click away from you. If you know how to choose and use them effectively , your project can benefit mightily.
Continue reading "Choosing and Using Open Source Components"Last modified: Sunday, May 1, 2011 10:05 pm
Applied Code Reading: Debugging FreeBSD Regex
When the code we're trying to
read is inscrutable,
inserting print statements and running various test cases can be
two invaluable tools.
Earlier today I fixed
a tricky problem in the FreeBSD regular expression library.
The code,
originally written by Henry Spencer in the early 1990s,
is by far the most complex I've ever encountered.
It implements sophisticated algorithms with minimal commenting.
Also, to avoid code repetition and increase efficiency,
the 1200 line long main part of the regular expression execution engine is
included in the compiled C code
three times after modifying various macros to adjust the code's behavior:
the first time the code targets small expressions and operates
with bit masks on long integers,
the second time the code handles larger expressions
by storing its data in arrays,
and the third time the code is also adjusted to handle multibyte characters.
Here is how I used test data and print statements to locate and fix the problem.
Continue reading "Applied Code Reading: Debugging FreeBSD Regex"Last modified: Wednesday, September 16, 2009 9:44 am
Applied Code Reading: GNU Plotutils
Robert, a UMLGraph user sent me an email
describing a problem with the
GNU plotutils
SVG output on Firefox.
I firmly believe that
code reading is a lot
easier than many think:
one can easily fix most software problems without detailed knowledge
of the underlying system.
I therefore decided to practice what I preach.
Continue reading "Applied Code Reading: GNU Plotutils"Last modified: Tuesday, August 11, 2009 4:40 pm
Madplay on an Intel Mac
Numerous MP3 players around my house pull music from a central file server.
The hardware I'm using is extremely diverse and many devices
can nowadays be politely described as junk:
they include 100MHz Pentiums with 16MB RAM, and an ARM-based prototype
lacking support for floating point operations.
For the sake of simplicity I've standardized the setups around
a web server running on each machine to list static HTML pages
containing the available music files,
and simple shell-based CGI clients that invoke
madplay to
play the music.
When I added an Intel-based Mac to the mix I found that madplay
refused to work, producing only a white noise hiss.
Continue reading "Madplay on an Intel Mac"Last modified: Monday, July 13, 2009 11:46 am
Greek Numerals in OpenOffice.org
OpenOffice.org
doesn't support Greek numerals,
and this is a problem for its Greek localization,
because such numerals are often used for section and list numbering.
As an exercise in large scale
code reading and in the
writing of code I'm supposed to teach to undergraduate students,
I decided to contribute an implementation to OpenOffice.org.
Continue reading "Greek Numerals in OpenOffice.org"Last modified: Thursday, June 25, 2009 9:27 pm
Revisiting the Antikythera Mechanism Emulator
Over the past few weeks I updated the
Antikythera mechanism emulator
I built in 2007.
I was preparing for an invited talk on the subject, which I'll give at the
2009 USENIX Annual Technical Conference,
and for this I wanted to include in the emulator the new findings
recently published in Nature.
Continue reading "Revisiting the Antikythera Mechanism Emulator"Last modified: Wednesday, May 27, 2009 12:10 am
Fixing the Orientation of JPEG Photographs
I used to fix the orientation of my photographs through an application
that would transpose the compressed JPEG blocks.
This had the advantage of avoiding the image degradation of a
decompression and a subsequent compression.
Continue reading "Fixing the Orientation of JPEG Photographs"Last modified: Sunday, June 14, 2009 8:20 pm
Open Source Opens up for Business
Today, as I was reading the
sourceforge.net
monthly update,
I was impressed by the number of business-related software in the top-25
project list.
I was sure this wasn't always the case,
so I dug up the corresponding
the top-25 projects at the beginning of 2006
to refresh my memory.
The differences are profound.
Continue reading "Open Source Opens up for Business"Last modified: Wednesday, April 1, 2009 9:30 am
Beautiful Architecture
What are the ingredients of robust, elegant, flexible, and maintainable software architecture?
Over the past couple of years, my colleague
Georgios Gousios
and I worked
on answering this question through a collection of intriguing essays
from more than a dozen of today's leading software designers and architects.
Continue reading "Beautiful Architecture"Last modified: Wednesday, February 4, 2009 12:48 am
Sound-Bytes from the Open World Forum
I'm currently attending the
Open World Forum taking place
in Paris.
The conference is proving extremely interesting with many notables,
like,
Jim Whitehurst the president and CEO of Red Hat and
Mike Milinkovich the executive director of the Eclipse Foundation,
talking and exchanging opinions.
Many of the discussions are too cerebral to be effectively blogged,
but here are some sound-bytes I noted down from the session on
public policies to promote sustainable development of shared resources.
Continue reading "Sound-Bytes from the Open World Forum"Last modified: Tuesday, December 2, 2008 4:00 pm
A Look at Zero-Defect Code
The US
National Security Agency
has released a case study showing how to
develop zero-defect code in a cost-effective manner.
The researchers of the project conclude that,
if adopted widely, the practices advocated in the case study
could help make commercial software programs more reliable and less vulnerable.
I examined a small part of the case study's code, and was not impressed.
Continue reading "A Look at Zero-Defect Code"Last modified: Saturday, October 18, 2008 1:39 pm
UMLGraph Version 5.1
Over the summer two articles presented
UMLGraph to the masses.
Paul Duvall wrote on IBM developerWorks an article titled
Automation for the people: Pushbutton documentation, and
Meera Subbarao published on DZone Javalobby another piece on how to
reverse-engineer source code into UML diagrams.
In addition, I received a number of interesting patches and contributions.
As a result I decided it was time to release UMLGraph version 5.1.
Continue reading "UMLGraph Version 5.1"Last modified: Wednesday, August 27, 2008 8:28 pm
Interoperability, at Last
Language is a very powerful way to describe behavior.
Therefore even when I create pictures, instead of dragging around my mouse,
I use declarative tools like GraphViz,
gnuplot,
and
UMLGraph.
These allow me to describe what I want to draw, instead of
how I want the end-result to look like.
The truth however is that the end-results are not always perfect.
Today I realized that the state of the art has advanced to the point
where I can create the drawing declaratively, and then visually
polish the final drawing.
Continue reading "Interoperability, at Last"Last modified: Saturday, May 24, 2008 9:48 pm
Open and Closed Source Kernels Go Head to Head
Earlier today I presented at the
30th International Conference on Software Engineering a
research paper comparing the
code quality of Linux, Windows (its
research kernel distribution),
OpenSolaris, and
FreeBSD.
For the comparison I parsed multiple configurations of these systems (more than ten million lines), and stored the results in four databases, where I could run SQL queries on them. This amounted to 8GB of data, 160 million records.
(I’ve made the databases and the SQL queries available
online.)
The areas I examined were file organization, code structure, code style, preprocessing, and data organization.
To my surprise there was no clear winner or looser, but there were interesting differences in specific areas.
Continue reading "Open and Closed Source Kernels Go Head to Head"Last modified: Friday, May 16, 2008 1:44 am
LTO Tape Drive Compression Considered Harmful
I used to think that tape drive compression was a silly marketing trick
used by manufacturers to inflate the advertised capacity of their tape drives.
Apparently it is worse than that.
Continue reading "LTO Tape Drive Compression Considered Harmful"Last modified: Friday, April 18, 2008 0:21 am
The Power of an Integrated Platform
FreeBSD, unlike Linux, is not a kernel, but a complete
operating system.
This allows a much smoother integration of its components,
which is a real boon when you try to locate and fix a problem.
The source code for all the parts is all ordered in a single
directory tree for you to examine and experiment with.
Continue reading "The Power of an Integrated Platform"Last modified: Thursday, February 21, 2008 8:15 am
What I'd Say to Bill Gates
Bill Gates is visiting Athens tomorrow.
In his short stay he'll inaugrate Microsoft's
so-called innovation center, which is provided
as an offset for a deal Microsoft signed with the Greek government
for the purchase of 70.000 licenses, and he'll also give a talk
on Microsoft's vision for the future of technology.
As a prelude to this event
the Sunday newspaper Eleftherotypia inset
Epsilon
has invited a few Greek open-source advocates to give in a few sentences
what they would say to Bill Gates during his visit.
Continue reading "What I'd Say to Bill Gates"Last modified: Sunday, January 27, 2008 11:56 am
An Update on UMLGraph
Today I released version 5.0 of UMLGraph.
This release contains a couple of important changes: six new shapes
(components, nodes, collaborations, use cases, notes, and active classes),
a facility for adding notes, and the hosting and packaging under its
own domain name umlgraph.org
.
Continue reading "An Update on UMLGraph"Last modified: Thursday, November 29, 2007 5:40 pm
International BSD Conference in Turkey
I'm on my way back from the
International BSD Conference in Turkey,
which a group of enthusiastic members of our community organized on
Friday and Saturday.
Continue reading "International BSD Conference in Turkey"Last modified: Sunday, October 21, 2007 4:15 pm
Creative Commons Around the World
On Saturday
Lawrence Lessig
will be inaugurating the launch of
Creative Commons
licenses in Greece.
This prompted me to investigate how pages licensed under creative commons
licenses are distributed on the internet.
Continue reading "Creative Commons Around the World"Last modified: Thursday, October 11, 2007 2:56 pm
Cooperative Development at the Speed of Light
The agility and responsiveness of major open-source endeavors never
ceases to amaze me.
Continue reading "Cooperative Development at the Speed of Light"Last modified: Friday, September 14, 2007 9:42 pm
Using the Open-Sourced Java Platform
Having access to a system's source code is liberating.
I've felt this since I first laid my eyes on the source code of the
9th Edition Unix in 1988, and I saw this again as I used the freshly
open-sourced Java platform
to implement a UMLGraph
feature that has been bugging me for more than a month.
Continue reading "Using the Open-Sourced Java Platform"Last modified: Thursday, May 10, 2007 5:23 pm
One Traffic Light Per Child
The XO machine of the
One Laptop Per Child initiative
has a display with two remarkable properties:
in reflective mode it can be read under sunlight,
and it can also work in both laptop and tablet mode.
Add a dozen-line
EToys
program and you have a real traffic light.
Continue reading "One Traffic Light Per Child"Last modified: Saturday, March 24, 2007 11:16 pm
Software Development Productivity Award
Yesterday, at the
17th annual Jolt Product Excellence and Productivity Awards
my book
Code Quality: The Open Source Perspective won a Software Development Productivity Award
in the Technical Books category.
Continue reading "Software Development Productivity Award"Last modified: Friday, March 23, 2007 11:13 am
Open source as a paradigm for evolving complex systems
Scientists in the 1980s hotly debated the feasibility of US's proposed Strategic Defence Initiative, commonly known as Star Wars. One argument concerned the amount of software needed to control the missile detectors and weapons.
Continue reading "Open source as a paradigm for evolving complex systems"Last modified: Friday, January 19, 2007 8:33 am
Cracking Software Reuse
[Newton] said, "If I have seen further than others, it is because I've stood on the shoulders of giants." These days we stand on each other's feet!
— Richard Hamming
Continue reading "Cracking Software Reuse"Last modified: Friday, December 15, 2006 11:31 am
SQO-OSS Launched
Yesterday my research group and our partners officially launched the
SQO-OSS
research project:
a Software Quality Observatory for Open Source Software.
Continue reading "SQO-OSS Launched"Last modified: Friday, October 20, 2006 7:39 pm
NASSCOM Quality Summit 2006
Last week I attended NASSCOM's 2006 Quality Summit in Bangalore, India.
There I gave a tutorial on tooling with open source software, and
delivered a talk on Global Software Development in the FreeBSD Project.
It was an edifying trip.
Continue reading "NASSCOM Quality Summit 2006"Last modified: Sunday, September 17, 2006 10:35 pm
Open Source and Professional Advancement
Doing really first-class work, and knowing it, is as good as wine, women (or men) and song put together.
— Richard Hamming
Continue reading "Open Source and Professional Advancement"Last modified: Friday, December 15, 2006 11:32 am
SeaMonkey vs Internet Explorer Revisited
In an older blog entry
I compared the complexity of Mozilla with that of Internet Explorer
by looking at the components each linked to.
Recently, comments to a Slashdot posting I made, noted
that I was comparing the two products on different platforms and
source with binary dependencies.
I therefore set out to compare the binary dependencies of the two
under Windows.
Continue reading "SeaMonkey vs Internet Explorer Revisited"Last modified: Tuesday, August 8, 2006 6:17 pm
What Can System Administrators Learn from Programmers?
Although we often hear about program bugs and techniques to get
rid of them, we seldom see a similar focus in the field of system
administration.
This is unfortunate, because increasingly the reliability of an IT system
depends as much on the software comprising the system as on the support
infrastructure hosting it.
Continue reading "What Can System Administrators Learn from Programmers?"Last modified: Sunday, July 23, 2006 0:10 am
Interoperability Requires Temperance
After testing the CScout refactoring browser
on the FreeBSD kernel, I decided
to try it on Linux.
I'm getting there, but slowly, and the reason is the gratuitous use of
gcc extensions made in the Linux kernel source code.
Every time I come across a program construct that CScout doesn't
grok, I have to study the C standards to see if the construct is legal C
that CScout fails to implement or a gcc extension.
Extensions are trouble, because, they're typically only vaguely documented.
Continue reading "Interoperability Requires Temperance"Last modified: Sunday, June 25, 2006 7:01 pm
Surprising Findings on Software Reuse
Kevin DeSouza and his colleagues in a recent
article in the
Communications of the ACM published some surprising
findings regarding software reuse:
reuse happens more by novices rather than by experts,
within projects rather than across them, and in
transient teams rather than permanent ones.
The statement regarding the higher propensity of rookies to reuse
compared to older professionals rang particularly true to my ears.
Continue reading "Surprising Findings on Software Reuse"Last modified: Sunday, May 7, 2006 10:01 pm
Code Quality: The Open Source Perspective
My new book
Code Quality: The Open Source Perspective
got published,
three years after I started writing it.
The book owes more to open source software than any of the books
dealing with Linux, PHP, Apache, Perl or any other book covering
a specific technology.
Continue reading "Code Quality: The Open Source Perspective"Last modified: Wednesday, April 12, 2006 12:05 am
A Tree of Mentors
In the FreeBSD project, new
committers are assigned a mentor who overlooks their work, until they
are judged to be confident enough to work on their own.
As lots of things in the open-source landscape, having a mentor is a loan,
which we should pay back by mentoring somebody else.
Continue reading "A Tree of Mentors"Last modified: Saturday, January 7, 2006 4:05 pm
MIT's $100 Laptop
The MIT Media Lab is working on a research initiative to develop
a $100 laptop.
This will be distributed through governments to schools to
help the education of the world's students.
These are my notes from a talk
Michail Bletsas,
Director of Computing at the MIT Media Lab
gave on the subject, at an event organized by the
Netmode Laboratory .
Continue reading "MIT's $100 Laptop"Last modified: Friday, October 14, 2005 11:34 pm
GCC Obfuscated Code
For years I've struggled to understand the
GNU compiler collection internals,
I am ashamed to say, without much success.
I always thought that the subject was intrinsically too complicated
for me, but after struggling to understand a two line gcc
code snippet of a fairly simple operation for more than two minutes,
I realized that the code style may have something to do with my problems.
Continue reading "GCC Obfuscated Code"Last modified: Sunday, July 17, 2005 1:11 pm
UMLGraph Update
I have updated the UMLGraph program to
run under Java 1.5.
Continue reading "UMLGraph Update"Last modified: Saturday, March 26, 2005 5:29 pm
An Open Source Java Metrics Toolset Is Hard to Find
I spent many hours looking for a stand-alone open source metrics toolset
for Java programs.
Unfortunately, I was not able to find a single tool that would
fit my (relatively modest) requiremets.
Continue reading "An Open Source Java Metrics Toolset Is Hard to Find"Last modified: Thursday, March 31, 2005 11:49 pm
Maintainability of the FreeBSD System
Last November Ioannis Samoladas and his colleagues published an article
in the Communications of the ACM [1] that compared the maintainability
of open-source versus-closed source projects.
I applied the maintainability index [2] they used on the FreeBSD source
repository following the code's maintainability over time, and comparing
the maintainability of different modules.
Here are the results.
Continue reading "Maintainability of the FreeBSD System"Last modified: Friday, February 4, 2005 5:50 pm
Who Maintains the GNU Plotutils?
The GNU plotutils
package contains a reimplementation of a pic language processor.
I find pic invaluable for drawing diagrams;
in fact the sequence diagram editor in my
UMLGraph system, depends on it.
The current version is 2.4.1, and was released in July 2000 - almost four years ago.
I have discovered two bugs, but no one seems to be maintaining the package.
This is unfortunate.
Continue reading "Who Maintains the GNU Plotutils?"Last modified: Monday, December 27, 2004 2:34 pm
Code Reading Example: the Linux Kernel Load Calculation
A colleague's Linux machine was exhibiting a very high load value,
for no obvious reason.
I wanted to make him point the kernel debugger on the routine calculating
the load.
It has been more than 7 years since the last time I worked on a Linux
kernel,
so I had to find my way around from first principles.
This is an annotated and slightly edited version of what I did.
Continue reading "Code Reading Example: the Linux Kernel Load Calculation"Last modified: Thursday, November 25, 2004 9:40 am
Involving Students With Open Source Projects
A Slashdot story titled
OSDDP: Involving Students With Open Source Docs
prompted me to describe my experiences with the
Software Comprehension and Maintenance
course I am teaching.
The reactions from the—difficult to please—slashdot crowd
were surprisingly positive and friendly.
Continue reading "Involving Students With Open Source Projects"Last modified: Monday, October 25, 2004 10:29 am
Cracker Code Review
According to a popular myth, crackers are computer whiz kids:
brilliant software developers who run circles around their
"peers" in the corporate world.
When my undergraduate student Achilleas Anagnostopoulos sent me a
pointer
to the source code of the
Microsoft GDIPlus.DLL JPEG Parsing Engine Buffer Overflow
exploit, I decided to test the myth
by performing a code review of the exploit's source code.
The results are not flattering for the exploit's developers:
no self-respecting professional would ever write production code of
such an abysmally low quality.
Sorry M4Z3R.
Continue reading "Cracker Code Review"Last modified: Tuesday, October 5, 2004 10:47 pm
The hypot() Mystery
I was writing a section for the
Code Reading
followup volume, and wanted to demonstrate the pitfalls of
using homebrewn mathematical functions instead of the library
ones.
As an example, I chose to compare the C library
hypot(x, y)
function,
against
sqrt(x * x, y * y)
.
I created a plot of "unit in last place" (ulp) error values between
the two functions, which demonstrated how the error increased for larger
values of y.
Continue reading "The hypot() Mystery"Last modified: Monday, August 16, 2004 7:05 pm
Not All Open-source Systems Are Perfect
I am a big fan of open-source software, and I use many open-source
programs on a daily basis.
Some of my favourite systems, on which I depend, include
the FreeBSD operating system,
the apache web server, and
the vim editor.
I also often use
graphviz,
CVS,
Ghostview,
gnuplot,
LaTeX, and
the GNU C Compiler.
I find all of these systems robust, well documented, and, in many cases,
superior to their proprietary alternatives.
Continue reading "Not All Open-source Systems Are Perfect"Last modified: Tuesday, July 20, 2004 11:09 am
Optimizing ppp and Code Quality
The Problem
While debugging a problem of my ppp connection I noticed that
ppp was apparently doing a protocol lookup (with a file open,
read, close sequence) for every packet it read.
This is an excerpt from the strace log, one of my
favourite debugging tools.
Continue reading "Optimizing ppp and Code Quality"Last modified: Sunday, May 16, 2004 1:09 pm
Software Complexity: Open Source vs Microsoft
In a readable and interesting paper titled
CyberInsecurity: the cost of a monopoly
seven notable security experts argue that the Microsoft's near monopoly
in the desktop operating system and office productivity markets is creating
a dangerous monoculture that exacerbates the effect of security vulnerabilities.
Continue reading "Software Complexity: Open Source vs Microsoft"Last modified: Friday, October 3, 2003 7:33 pm
FreeBSD Committer
I became a FreeBSD committer.
I've been using BSD Unix systems
since 1986 starting with 4.3 BSD on a pair of VAX 780 machines. In
1992, as a bored PhD student, I reimplemented sed(1) and contributed it
the unencumbered BSD version that was then being put together; it is now
part of the *BSD family. I crossed again paths with BSD software when
the prize of the 2000 Usenix technical conference ``win a pet Shark
contest'', Digital's Network Appliance Reference Design-DNARD, came with
a NetBSD boot image. I used that code for drawing about 500 examples
for my book
Code Reading: The Open Source Perspective (Addison-Wesley
2003), detailing how to read software code others have written
.
Since 2001 I 've been using
FreeBSD to control my home's security, communications, and entertainment
systems as described in a
SANE conference paper
and a
recent article
in Personal and Ubiquitous Computing
(as an academic I have to live by the "publish or perish" motto).
Continue reading "FreeBSD Committer"Last modified: Friday, October 3, 2003 7:34 pm